home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / BKISSSRC.ZIP / CREDITS / HARTPATH.BAS < prev    next >
Encoding:
BASIC Source File  |  1994-02-13  |  2.0 KB  |  80 lines

  1. DEFINT A-Z
  2.  
  3. CONST FontHeight = 23
  4. CONST ScreenWidth = 320 / 4
  5.  
  6. SCREEN 13
  7.  
  8. 'display the bitmap
  9. OPEN "BIGHEART.TGA" FOR BINARY AS #1
  10. SEEK #1, 19
  11. FOR Attr = 0 TO 255
  12.     Value$ = SPACE$(3)
  13.     GET #1, , Value$
  14.     red& = ASC(MID$(Value$, 3))
  15.     green& = ASC(MID$(Value$, 2))
  16.     blue& = ASC(MID$(Value$, 1))
  17.     'PALETTE Attr, 65536 * blue& + 256 * green& + red&
  18. NEXT Attr
  19. SEEK #1, 19 + 768: A$ = " "
  20. FOR Row = 0 TO 199
  21.     FOR Col = 0 TO 319
  22.         GET #1, , A$
  23.         PSET (Col, Row), ASC(A$)
  24.     NEXT Col
  25. NEXT Row
  26. CLOSE #1
  27.  
  28. 'Main entry loop
  29. OPEN "HARTPATH.INC" FOR OUTPUT AS #1
  30. PRINT #1, "LABEL HeartPath WORD"
  31. Row = 100: OutputCount = 0
  32. FOR Col = 0 TO 319
  33.     PointStatus = -1
  34.     DO
  35.         IF PointStatus <> -1 THEN
  36.             PSET (Col, Row), PointStatus
  37.             PointStatus = -1
  38.         ELSE
  39.             PointStatus = POINT(Col, Row)
  40.             PSET (Col, Row), 15
  41.         END IF
  42.  
  43.         A$ = INKEY$
  44.         SELECT CASE A$
  45.             CASE CHR$(0) + CHR$(72) 'Up arrow
  46.                 IF PointStatus <> -1 THEN
  47.                     PSET (Col, Row), PointStatus
  48.                     PointStatus = -1
  49.                 END IF
  50.                 Row = Row - 1
  51.             CASE CHR$(0) + CHR$(80) 'Down arrow
  52.                 IF PointStatus <> -1 THEN
  53.                     PSET (Col, Row), PointStatus
  54.                     PointStatus = -1
  55.                 END IF
  56.                 Row = Row + 1
  57.             CASE CHR$(13) 'Enter
  58.                 IF PointStatus <> -1 THEN
  59.                     PSET (Col, Row), PointStatus
  60.                     PointStatus = -1
  61.                 END IF
  62.                 EXIT DO
  63.             CASE ELSE
  64.         END SELECT
  65.     LOOP
  66.     IF OutputCount = 0 THEN
  67.         PRINT #1, "DW ";
  68.     ELSE
  69.         PRINT #1, ",";
  70.     END IF
  71.     PRINT #1, RTRIM$(LTRIM$(STR$((Row - FontHeight) * ScreenWidth)));
  72.     OutputCount = OutputCount + 1
  73.     IF OutputCount >= 15 THEN
  74.         PRINT #1, ""
  75.         OutputCount = 0
  76.     END IF
  77. NEXT Col
  78. CLOSE #1
  79.  
  80.